Advances in computer technology are allowing many organizations to move towards a service-oriented architecture (SOA), where data flows and business logic of an organization are implemented using assemblies of web services. In general, web services are software components capable of being accessed via standard network protocols using a standardized messaging system. Such web services are typically capable of exchanging data with software applications that are written in various programming languages running on various platforms, thus enabling platform independent implementations of data flows and business logic of an organization.
In practice, an individual may utilize workflow modeling and runtime technologies and corresponding standards such as Business Process Execution Language (BPEL) to enable workflow-oriented applications, in which each business process is modeled as a workflow process model, also referred to as a workflow. A workflow is a series of steps involving a mix of services (software and human-provided) that may then be deployed and executed on a number of vendor provided, workflow runtime platforms, such as the IBM® WebSphere® Process Server. For example, a workflow may be a number of loosely coupled web services sending and receiving messages to perform an overall (business) process. A business process expert may link and sequence web services, in a process known as orchestration, to meet a new or existing business requirement. Workflow-oriented applications are central to the SOA pattern and allow a set of generic software services to be used in a variety of different combinations to solve an ever evolving set of business needs.